哈囉大家好,我們今天來簡單補充一下cookie、Session和Token,這裡我會分成兩天來介紹,兩天的內容要搭配在一起看,那今天的部分我們會先舉例一個故事讓大家思考一下,然後明天才會講解故事要表達的東西。
首先我們想要先了解這三者,我們要先從HTTP server 無狀態協議(stateless protocol)開始說起,所謂的無狀態協議指的是每一次的請求都互不相關,我們這邊舉個例子:
「在無狀態協議底下,今天A到銀行,寄放一個貴重的物品在銀行保險箱,結果沒有紀錄,下次A到銀行要領取物品的時候,,銀行不知道A是誰也不知道放甚麼東西放在哪。
為了解決這個情況,下次A再一次寄放東西的時候,銀行都會把各種訊息寫好寫滿,A是誰放甚麼東西放在哪,寫得鉅細靡遺在紙條上,寫好給A帶回去,下次來要領的時候把這張紙條帶來。
久而久之,雖然無狀態協議的問題解決了,但是A覺得還是有點危險,畢竟任何資訊都寫在上面放在自己身上,後來請銀行改善,銀行就換了一種做法,就是A寄放東西的時候,各種訊息放在銀行,而銀行會給你一組代號,這時候A選擇把代號寫在紙條上,下次領東西的時候,銀行櫃檯把代號一對,A在甚麼時候存甚麼放在哪,都一目瞭然了。」
在這裡真的是要跟夥伴們說不好意思,如果不習慣文字很長,又覺得比喻不適當的話,還請見諒。
今天看完舉例的故事,讓我們休息一下,喘口氣,理解一下我們今天說的無狀態,然後夥伴們可以思考一下,這故事內容跟cookie以及Session有甚麼關係,讓我們明天一起看下去。